In a wide variety of machines it is advantageous to have a tool advance in a controlled manner or to have the workpiece continuously fed into the machine. This is accomplished by providing a geartrain or track to advance the workpiece or tool. This invention relates to those machines in which it is advantageous to have the rate of advance of the tool or workpiece be proportional to the speed of some operating element within the machine. An obvious example of such machines are coil-winding machines, where the rate of advance should be proportional to the rotational speed of the drum. This relationship between the machine speed and the rate of advance is also advantageous in machines such as lathes, where the spindles or bits may rotate at various speeds under varying loads. To avoid needless recitation, the general term "carriage" will be used hereinafter to denote all types of tools or workpieces.
In the past, control units for providing that the carriage advance at a rate related to the speed of the machine have largely involved some sort of gearing, or a servomechanism with a feedback loop. The predominant approach has been to feed back an analog electrical signal related either to the speed of the machine or to the differential between the machine speed and the rate of advance of the carriage. In such control units, it has been difficult to provide uniform control over broad ranges of machine speeds and rates of carriage advance. Additionally, it has been difficult to make the rate of advance selectable in small increments over these broad ranges. The analog systems have not proven to allow accurate control of speeds over broad ranges and small increments.
Digital systems wherein the carriage is caused to advance by an electrical stepping motor have the potential to provide such controlled, programmable rate of advance. In an electrical stepping motor, the motor output causes an advance which is directly proportional to the number of pulses of electrical energy received by the motor input. The motor can be generally described as advancing the carriage a uniform distance per pulse of received electrical energy.
The input to the stepping motor must be a train of pulses of electrical energy that is related to the speed at which the machine is processing the workpiece. Specifically, the pulse train must contain a selectable number of electrical pulses per revolution of the shaft of the processing machine.
A conventional optical shaft encoder could theoretically perform this task. Such an encoder would use a disc or set of discs containing a progressive number of optical holes in concentric bands and mounted on the machine shaft. LED light sources and photocells would be arranged in matched pairs in alignment with the bands of the discs, so that light from an LED would produce a pulse of electrical current from its paired photocell whenever rotation of the disc brought a hole in alignment between the LED and photocell. By selecting a particular LED/photocell pair as the output, a train of pulses related to the rotation of the machine shaft could be generated.
However, such a conventional encoder would become impractically large if selectability in small increment is desired over a broad range of rates of advance. For instance, if a rate of advance selectable in increments of 0.001 inch per revolution of the machine spindle over a range of from 0 to 2.5 inches per spindle revolution were desired, a conventional encoder would require 2500 programs, each having an LED/photocell pair and the associated wiring for program selection.